import Vue from 'vue';
import App from './App';
import router from './router';
import store from './store';
import '@/assets/css/mobile_reset.css';
import './plugins/vant';
import 'amfe-flexible/index.js';
import Router from 'vue-router';
import api from '@/api';

// 以下方式是全局引入 - 注意在swiper 3.1.3版本中和现在最新的swiper4.1.1版本用法不太一样，具体上npm官方查看文档，本人已入坑
// 引入swiper对应需要的css
// import '../node_modules/swiper/css/swiper.min.css';

// import VueAwesomeSwiper from 'vue-awesome-swiper';

// Vue.use(VueAwesomeSwiper);

// 在main.js里引入全局自定义指令
import * as directives from '@/directives';
// 循环遍历使用每一个自定义指令
Object.keys(directives).forEach(key => Vue.directive(key, directives[key]));

// 将二次封装的axios挂载在Vue的根实例下
Vue.prototype.$axios = api;

// 关闭生产提示
Vue.config.productionTip = false;

// 解决Router报错的问题
const originalPush = Router.prototype.push;
Router.prototype.push = function push (location) {
    return originalPush.call(this, location).catch(err => err);
};

// 启动Vue应用
new Vue({
    router,
    store,
    render: h => h(App)
}).$mount('#app');
